home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
TPUG - Toronto PET Users Group
/
TPUG Users Group CD
/
TPUG Users Group CD.iso
/
COMAL
/
A-COMAL Series
/
(k)aac.d64
/
basic-misshd3
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2007-02-28
|
3KB
|
152 lines
100 REM 2-D AIR-TO-GROUND MISSILE-FILE MISSHD3-BA USE 1526/802 PRINTER
105 POKE53265,11: REM TURN 0FF SCREEN
110 OPEN3,4
120 CMD3
130 PRINT#3,CHR$(16)"082-D AGM-VERSION-5B 3/21/84-LINEAR-ATAU=.05,DEL BI=.0097"
140 PRINT#3,CHR$(10)
150 PRINT#3,CHR$(16)"02VA";
160 PRINT#3,CHR$(16)"17XT";
170 PRINT#3,CHR$(16)"31NL";
180 PRINT#3,CHR$(16)"46VT";
190 PRINT#3,CHR$(16)"61G2MT"
200 VA = 1562
210 XT = 5000
220 NL = 4
230 VT = 0
240 G2MT= 0
250 KA =-2.125
260 PRINT VA,XT,NL,VT,G2MT
270 PRINT#3,VA,XT,NL,VT,G2MT
280 PRINT#3,CHR$(10)
290 PRINT#3,CHR$(16)"03T";
300 PRINT#3,CHR$(16)"09VM";
310 PRINT#3,CHR$(16)"17DX";
320 PRINT#3,CHR$(16)"25DZ";
330 PRINT#3,CHR$(16)"33GAMM";
340 PRINT#3,CHR$(16)"41THM";
350 PRINT#3,CHR$(16)"49NM";
360 PRINT#3,CHR$(16)"57ZD";
365 PRINT#3,CHR$(16)"65DEL"
369 PRINT#3
370 CLOSE3
380 DT=0.01
390 GC=32.1739
400 RAD=180/(null)
410 XM=0.
420 ZM=0.
430 ZT=500
440 SG=ATN((ZM-ZT)/(XT-XM))
450 SR=0
470 KR=5.
480 KT=5.
490 KN=KT*NL
500 G1MMD=0.
510 GAMM=0.
520 AL=0.
530 DEL=0
540 W=48.3
550 S=.196
560 CBAR=.5
570 IY=1.6
580 RHO=.0023769
590 CL=0.
600 VS=1116.9
610 VM=VA
620 G2MT=G2MT/RAD
630 G3MTD=0.
640 T5HDD=0
650 T6HD =0
660 THM =0
670 T=0.
680 T2=.1
690 TR=385
692 ATAU=.05
694 BTAU=ATAU+DT
696 DEL=0
700 REM START OF ITERATIVE CALCULATION
710 REM( TRACKING LOOP )
720 EP=SG-SR
730 S2GRD=KR*KT*EP
740 IF S2GRD >=.35 THEN S2GRD= .35
750 IF S2GRD <=-.35 THEN S2GRD=-.35
760 SR=SR+S2GRD*DT
770 D1EL=EP*KR*(KN/KA)-0.0097
775 DEL=(DEL*ATAU+D1EL*DT)/BTAU
780 IF DEL > .087 THEN DEL= .087
790 IF DEL <-.087 THEN DEL=-.087
810 REM( AERODYNAMICS AND CONTROL )
820 M=VM/VS
830 C1D=.669
840 C4DL=.045
850 C5MA=-3.85
860 C6MD=-3.52
870 C7MQ=-400
880 C2AL=13.6
890 C3LD=3.15
900 CL=AL*C2AL+DEL*C3LD
910 CD=C1D+C4DL*CL*CL
920 QA=.5*RHO*VM*VM
930 QS=QA*S
940 L=QS*CL
950 D=QS*CD
960 MTHD=QS*CBAR*CBAR*C7MQ*T6HD/(2*VM)
970 MAL =QS*CBAR*C5MA*AL
980 MDEL=QS*CBAR*C6MD*DEL
990 T5HDD=(MAL+MDEL+MTHD)/IY
1000 T6HD=T6HD+T5HDD*DT
1010 THM =THM+T6HD*DT
1020 G1MMD=((L/W)+(TR/W)*SIN(AL)-COS(GAMM))*GC/VM
1030 GAMM=GAMM+G1MMD*DT
1040 V1D=GC*((TR/W)*COS(AL)-D/W-SIN(GAMM))
1050 NM=VM*G1MMG/GC
1060 VM=VM+V1D*DT
1070 AL=THM-GAMM
1080 GS=SR-THM
1090 IF GS >= .35 THEN GS=0.35
1100 IF GS <=-.35 THEN GS=-.35
1110 REM( MISSILE-TARGET KINEMATICS )
1120 XM=XM+VM*COS(GAMM)*DT
1130 ZM=ZM-VM*SIN(GAMM)*DT
1140 G2MT=G2MT+G3MTD*DT
1150 XT=XT+VT*COS(G2MT)*DT
1160 ZT=ZT-VT*SIN(G2MT)*DT
1170 DX=XT-XM
1180 DZ=ZM-ZT
1190 SG=ATN(DZ/DX):IFDX<0THENSG=SG+(null)
1200 R=SQR(DX*DX+DZ*DZ)
1210 T=T+DT
1220 REM( LOGIC AND PRINTOUTS )
1230 IF R <= 30.GOTO 1250
1240 IF T <=(T2-DT) GOTO 1350
1242 A=VM*SIN(GAMM-SG)-VT*SIN(G2MT-SG)
1244 B=VM*COS(GAMM-SG)-VT*COS(G2MT-SG)
1246 DLT=R/B
1248 ZD=A*DLT
1250 PRINT INT(100*T)/100,INT(R)
1260 OPEN2,4,2
1262 OPEN1,4,1
1270 PRINT#2,"99.999"
1271 PRINT#1,T;
1272 PRINT#2,"99999.9-"
1273 PRINT#1,VM;
1274 PRINT#1,DX;
1275 PRINT#1,DZ;
1276 PRINT#2,"999.999-"
1278 PRINT#1,GAMM;
1280 PRINT#1,THM;
1283 PRINT#2,"999.99-"
1284 PRINT#1,NM;
1288 PRINT#1,ZD;
1290 PRINT#2,"99.9999-"
1292 PRINT#1,DEL
1300 CLOSE2:CLOSE1
1330 IF R <= 30 GOTO 1370
1340 T2=T2+.1
1350 IF T>= 5 THEN END
1360 GOTO 720
1370 OPEN3,4
1380 PRINT#3," ZD=";
1390 PRINT#3,INT(10000*ZD)/10000
1391 POKE53265,27: REM TURN SCREEN ON
1400 CLOSE3:END